﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Sinacor.Infra.UI.Common;

namespace Sinacor.UI.Bovespa.ImportacaoExportacao.Model.Parameter
{
    public class FiltroExportacaoDistribuicao : BaseModel, IFiltroImportacaoExportacao
    {
        #region Atributos

        private Int32? _codigoCorrespondente;
        private DateTime? _dataPregao;
        private string _nomeArquivo;
        private Enum.TipoArquivo _tipoArquivo;
        private Enum.TipoSistema _tipoSistema;
        private Enum.TipoFormatoArquivo _tipoFormatoArquivo;

        #endregion

        #region Propriedades

        public Int32? CodigoCorrespondente
        {
            get
            {
                return _codigoCorrespondente;
            }
            set
            {
                SetValue<Int32?>("CodigoCorrespondente", ref _codigoCorrespondente, value);
            }
        }

        public DateTime? DataPregao
        {
            get
            {
                return _dataPregao;
            }
            set
            {
                SetValue<DateTime?>("DataPregao", ref _dataPregao, value);
            }
        }

        /// <summary>
        /// Nome do arquivo a ser importado
        /// </summary>
        public string NomeArquivo
        {
            get
            {
                return _nomeArquivo;
            }
            set
            {
                SetValue<string>("NomeArquivo", ref _nomeArquivo, value);
            }
        }

        public Enum.TipoArquivo TipoArquivo
        {
            get
            {
                return _tipoArquivo;
            }
            set
            {
                SetValue<Enum.TipoArquivo>("TipoArquivo", ref _tipoArquivo, value);
            }
        }

        public Enum.TipoSistema TipoSistema
        {
            get
            {
                return _tipoSistema;
            }
            set
            {
                SetValue<Enum.TipoSistema>("TipoSistema", ref _tipoSistema, value);
            }
        }

        public Enum.TipoFormatoArquivo TipoFormatoArquivo
        {
            get
            {
                return _tipoFormatoArquivo;
            }
            set
            {
                SetValue<Enum.TipoFormatoArquivo>("TipoFormatoArquivo", ref _tipoFormatoArquivo, value);
            }
        }

        #endregion

        #region Contrutor

        /// <summary>
        /// Construtor padrão
        /// </summary>
        public FiltroExportacaoDistribuicao()
        {
        }

        #endregion
    }
}
